home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / C / hf^k-2.dms / in.adf / MUIClass.Lha / Include / Classes / TWiMUI / Menu.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-09-06  |  4.3 KB  |  120 lines

  1. //
  2. //  $VER: Menu.h        1.2 (02 Sep 1996)
  3. //
  4. //    c 1996 Thomas Wilhelmi
  5. //
  6. //
  7. // Address : Taunusstrasse 14
  8. //           61138 Niederdorfelden
  9. //           Germany
  10. //
  11. //  E-Mail : willi@twi.rhein-main.de
  12. //
  13. //   Phone : +49 (0)6101 531060
  14. //   Fax   : +49 (0)6101 531061
  15. //
  16. //
  17. //  $HISTORY:
  18. //
  19. //  16 Jun 1996 :   1.0 : first public Release
  20. //
  21. //  02 Sep 1996 :   1.2 : Neu:
  22. //                        - Der Konstruktor:
  23. //                          MUIMenuitem(const STRPTR, const MUIMenuitem *, ...);
  24. //                        - Die Methode MUIMenuitem::CommandString wurde für MUI 3.6 hinzugefügt.
  25. //                        - ClassNum() für Exception-Handling.
  26. //                        Änderungen
  27. //                        - Parameter des Copy-Konstruktor als 'const'-Parameter definiert
  28. //
  29.  
  30. #ifndef CPP_TWIMUI_MENU_H
  31. #define CPP_TWIMUI_MENU_H
  32.  
  33. #ifndef CPP_TWIMUI_FAMILY_H
  34. #include <classes/twimui/family.h>
  35. #endif
  36.  
  37. #ifndef LIBRARIES_GADTOOLS_H
  38. #include <libraries/gadtools.h>
  39. #endif
  40.  
  41. class MUIMenuitem : public MUIFamily
  42.     {
  43.     protected:
  44.         virtual const ULONG ClassNum() const;
  45.     public:
  46.         MUIMenuitem(const struct TagItem *t) : MUIFamily(MUIC_Menuitem) { init(t); };
  47.         MUIMenuitem(const Tag, ...);
  48.         MUIMenuitem() : MUIFamily(MUIC_Menuitem) { };
  49.         MUIMenuitem(const MUIMenuitem &);
  50.         MUIMenuitem(const STRPTR, const Object *, ...);
  51.         MUIMenuitem(const STRPTR, const MUIMenuitem *, ...);
  52.         virtual ~MUIMenuitem();
  53.         MUIMenuitem &operator= (const MUIMenuitem &);
  54.         void Checked(const BOOL p) { set(MUIA_Menuitem_Checked,(ULONG)p); };
  55.         BOOL Checked() const { return((BOOL)get(MUIA_Menuitem_Checked,FALSE)); };
  56.         void Checkit(const BOOL p) { set(MUIA_Menuitem_Checkit,(ULONG)p); };
  57.         BOOL Checkit() const { return((BOOL)get(MUIA_Menuitem_Checkit,FALSE)); };
  58.         void CommandString(const BOOL p) { set(MUIA_Menuitem_CommandString,(ULONG)p); };
  59.         BOOL CommandString() const { return((BOOL)get(MUIA_Menuitem_CommandString,FALSE)); };
  60.         void Enabled(const BOOL p) { set(MUIA_Menuitem_Enabled,(ULONG)p); };
  61.         BOOL Enabled() const { return((BOOL)get(MUIA_Menuitem_Enabled,FALSE)); };
  62.         void Exclude(const LONG p) { set(MUIA_Menuitem_Exclude,(ULONG)p); };
  63.         LONG Exclude() const { return((LONG)get(MUIA_Menuitem_Exclude,0L)); };
  64.         void Shortcut(const STRPTR p) { set(MUIA_Menuitem_Shortcut,(ULONG)p); };
  65.         void ShortcutCheck() { set(MUIA_Menuitem_Shortcut,MUIV_Menuitem_Shortcut_Check); };
  66.         STRPTR Shortcut() const { return((STRPTR)get(MUIA_Menuitem_Shortcut,NULL)); };
  67.         void Title(const STRPTR p) { set(MUIA_Menuitem_Title,(ULONG)p); };
  68.         STRPTR Title() const { return((STRPTR)get(MUIA_Menuitem_Title,NULL)); };
  69.         void Toggle(const BOOL p) { set(MUIA_Menuitem_Toggle,(ULONG)p); };
  70.         BOOL Toggle() const { return((BOOL)get(MUIA_Menuitem_Toggle,FALSE)); };
  71.         struct MenuItem *Trigger() const { return((struct MenuItem *)get(MUIA_Menuitem_Trigger,NULL)); };
  72.     };
  73.  
  74. class MUIMenusep : public MUIMenuitem
  75.     {
  76.     public:
  77.         MUIMenusep() : MUIMenuitem(MUIA_Menuitem_Title, NM_BARLABEL,TAG_DONE) { };
  78.         MUIMenusep(const MUIMenusep &p) : MUIMenuitem((MUIMenuitem &)p) { };
  79.         virtual ~MUIMenusep();
  80.         MUIMenusep &operator= (const MUIMenusep &);
  81.     };
  82.  
  83. class MUIMenu : public MUIFamily
  84.     {
  85.     protected:
  86.         virtual const ULONG ClassNum() const;
  87.     public:
  88.         MUIMenu(const struct TagItem *t) : MUIFamily(MUIC_Menu) { init(t); };
  89.         MUIMenu(const Tag, ...);
  90.         MUIMenu() : MUIFamily(MUIC_Menu) { };
  91.         MUIMenu(const MUIMenu &);
  92.         MUIMenu(const STRPTR, const Object *, ...);
  93.         MUIMenu(const STRPTR, const MUIMenuitem *, ...);
  94.         virtual ~MUIMenu();
  95.         MUIMenu &operator= (const MUIMenu &);
  96.         void Enabled(const BOOL p) { set(MUIA_Menu_Enabled,(ULONG)p); };
  97.         BOOL Enabled() const { return((BOOL)get(MUIA_Menu_Enabled,FALSE)); };
  98.         void Title(const STRPTR p) { set(MUIA_Menu_Title,(ULONG)p); };
  99.         STRPTR Title() const { return((STRPTR)get(MUIA_Menu_Title,NULL)); };
  100.     };
  101.  
  102. class MUIMenustrip : public MUIFamily
  103.     {
  104.     protected:
  105.         virtual const ULONG ClassNum() const;
  106.     public:
  107.         MUIMenustrip(const struct TagItem *t) : MUIFamily(MUIC_Menustrip) { init(t); };
  108.         MUIMenustrip(const Tag t, ...);
  109.         MUIMenustrip() : MUIFamily(MUIC_Menustrip) { };
  110.         MUIMenustrip(const MUIMenustrip &);
  111.         MUIMenustrip(const Object *, ...);
  112.         MUIMenustrip(const MUIMenu *, ...);
  113.         virtual ~MUIMenustrip();
  114.         MUIMenustrip &operator= (const MUIMenustrip &);
  115.         void Enabled(const BOOL p) { set(MUIA_Menustrip_Enabled,(ULONG)p); };
  116.         BOOL Enabled() const { return((BOOL)get(MUIA_Menustrip_Enabled,FALSE)); };
  117.     };
  118.  
  119. #endif
  120.